home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor1 / db.doc < prev    next >
Text File  |  1995-03-31  |  5KB  |  138 lines

  1.  
  2.                                  DB directory 
  3.                           Copyright 1990 Ross Barnes 
  4.  
  5. Version 1.1 
  6.  
  7. Program size: 2776 bytes 
  8. Checksum: BC5Ch 
  9.  
  10. OVERVIEW 
  11. -------- 
  12.  
  13. DB is a directory containing a database system for the HP48SX.  You can create 
  14. any number of databases with one to ? fields in each database.  Once a database 
  15. is created you can add and delete records to it.  You can also search for a 
  16. string in the database.  You can scroll through the records or jump to the 
  17. end or back to the beginning.  Records can be copied to the stack. 
  18.  
  19. The programs in the directory are written to be used from PORT 0, PORT 1 
  20. or PORT 2 so it can be accessed from anywhere and doesn't show up in your 
  21. directories.  The databases must be in user memory. 
  22.  
  23. PROCEDURE 
  24. --------- 
  25.  
  26. 1.  The version I've put on the board assumes PORT 0 is where it will reside. 
  27.     If you want to use it with PORT 1 or 2 you must edit the programs in 
  28.     the directory changing the ":0:" to ":1:" or ":2".  Using a text editor 
  29.     on a PC to change the entire directory would be a fast way. 
  30.  
  31. 2.  Copy the directory DB onto your HP 48. 
  32.  
  33. 3.  Once the program is set up for the correct port RCL DB to the stack 
  34.     and store it under DB in PORT 0,1 or 2. 
  35.     e.g. 'DB' [RCL] :0:DB [STO]. 
  36.  
  37. 4.  To start the program (assuming PORT 0) type :0:{DB XQDB} [EVAL]. 
  38.  
  39. 5.  It prompts you for a database name: 
  40.     New database name? 
  41.  
  42. 6.  Enter a name and end it with .DB, e.g. TELE.DB [ENTER].  Do not use 
  43.     quotes around name. 
  44.  
  45. 7.  It prompts you for the number of fields: 
  46.     Number of fields? 
  47.  
  48. 8.  Enter a number from 1 to ?.  I would suggest keeping the number of fields 
  49.     5 or less as that is the most that will display on the screen at one 
  50.     time.  If 3 was entered the display would now have: 
  51.  
  52.     FLD1 
  53.     FLD2 
  54.     FLD3 
  55.  
  56.     in the display.  The menu keys displayed are discussed below. 
  57.  
  58. 9.  At this time the menu keys are active. 
  59.  
  60. ------------------------------------------------------------------------------- 
  61. NOTE: The variable DBINFO is created if it does not already exist 
  62. in the current directory.  This variable contains a list consisting of the 
  63. current active database in the current directory, the current record number 
  64. and the last find string.  If the message "DBINFO is invalid" occurs when 
  65. running the program purge the DBINFO variable and rerun the program.  If a 
  66. GET error occurs when you try to run the program then check the DBINFO 
  67. variable and if invalid purge it and rerun the program. 
  68. ------------------------------------------------------------------------------- 
  69.  
  70. MENU KEYS 
  71. --------- 
  72.  
  73. {USE}   --Finds all the variables with .DB in the name, prompts for a new 
  74.           database to use.  The default input is the current database. 
  75.  
  76. [left-shift]{USE} --Creates a new database, prompting for the name and the 
  77.                     number of fields in the new database.  This database 
  78.                     is now the current database. 
  79.  
  80. {FIND}  --Prompts for a find string and searches sequentially from next 
  81.           record to the end of the database.  The last find string is 
  82.           remembered for the current database.  To search the entire database 
  83.           [right-shift][up-arrow] first to go to the top then FIND.  The 
  84.           search IS CASE SENSITIVE.  Using only uppercase letters in the 
  85.           database is probably a good idea. 
  86.  
  87. {EDIT}  --Brings up the first field name prompt with a ? at the end.  The 
  88.           current value of the field is the default input.  Fields are prompted 
  89.           for one after the other. 
  90.  
  91. {ADD}   --A new empty record is added to the database and the new record 
  92.           is edited as in {EDIT}. 
  93.  
  94. {DEL}   --The delete is confirmed and the record is deleted.  You CANNOT 
  95.           undo the delete. 
  96.  
  97. {EXIT}  --This exits the program. 
  98.  
  99. [ENTER] --Copies the current record to the stack. 
  100.  
  101. [up arrow]   --Move up one record in current database. 
  102.  
  103. [down arrow] --Move down one record in current database. 
  104.  
  105. [right-shift][up arrow]   --Moves to top of current database. 
  106.  
  107. [right-shift][down arrow] --Moves to bottom of current database. 
  108.  
  109. HELPFUL HINTS 
  110. ------------- 
  111.  
  112. By including the following in the CST variable in the HOME directory 
  113. { "DB" << :0: { DB XQDB } >> } you can run the database program from anywhere 
  114. with only a couple of keystrokes. 
  115.  
  116. Don't forget that the DB directory in PORT 0, 1, 2 is not backed up with 
  117. ARCHIVE. 
  118.  
  119. Improvements I would like to make: 
  120.  
  121. - Remove the case sensitivity from the FIND.  I wrote an upper case function 
  122.   but it slowed down the FIND too much. 
  123. - Use databases in independent memory (PORT 0,1 or 2). 
  124. - Speed up FIND. 
  125. - Improve display of records 
  126.  
  127. Please let me know if any problems are found installing or using this system. 
  128. I also welcome questions, suggestions for improvements or just a comment to 
  129. tell me how much you dislike or like it. 
  130.  
  131. Ross Barnes 
  132. 8412 N. Boone #104 
  133. Kansas City, MO 64155 
  134.  
  135. (816) 436-2605 evenings 
  136. (913) 967-2650 days 
  137.  
  138.